package com.xueyi.system.Product.domain.po;

import java.math.BigDecimal;

import cn.hutool.json.JSONArray;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.xueyi.common.core.web.tenant.base.TBaseEntity;
import com.xueyi.system.Product.domain.dto.ProductDto;
import com.baomidou.mybatisplus.annotation.TableField;
import com.xueyi.common.core.annotation.Excel;

/**
 * 产品信息 持久化对象
 *
 * @author xueyi
 */
@TableName(value = "base_product", excludeProperty = {"sort", "status"},autoResultMap = true)
public class ProductPo extends TBaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 产品编码
     */
    @Excel(name = "产品编码")
    @TableField("code")
    private String code;

    /**
     * 产品分类id
     */
    @Excel(name = "产品分类id")
    @TableField("product_type_id")
    private String productTypeId;

    /**
     * 产品分类名称
     */
    @Excel(name = "产品分类名称")
    @TableField("product_type_name")
    private String productTypeName;

    /**
     * 省
     */
    @Excel(name = "省")
    @TableField("province")
    private String province;

    /** 省市区 */
    @Excel(name = "省市区")
    @TableField(value = "area_ids", typeHandler = FastjsonTypeHandler.class)
    private JSONArray areaIds;

    /**
     * 市
     */
    @Excel(name = "市")
    @TableField("city")
    private String city;

    /**
     * 区县
     */
    @Excel(name = "区县")
    @TableField("district")
    private String district;

    /**
     * 详细地址
     */
    @Excel(name = "详细地址")
    @TableField("address")
    private String address;

    /**
     * 产品品牌
     */
    @Excel(name = "产品品牌")
    @TableField("brand")
    private String brand;

    /**
     * 包装方式
     */
    @Excel(name = "包装方式")
    @TableField("pack_method")
    private String packMethod;

    /**
     * 包装企业
     */
    @Excel(name = "包装企业")
    @TableField("pack_enterprises")
    private String packEnterprises;

    /**
     * 规格
     */
    @Excel(name = "规格")
    @TableField("specs")
    private String specs;

    /**
     * 储藏方法
     */
    @Excel(name = "储藏方法")
    @TableField("storage_method")
    private String storageMethod;

    /**
     * 主要原料
     */
    @Excel(name = "主要原料")
    @TableField("materials")
    private String materials;

    /**
     * 执行标准
     */
    @Excel(name = "执行标准")
    @TableField("standard")
    private String standard;

    /**
     * 厂家
     */
    @Excel(name = "厂家")
    @TableField("manufactor")
    private String manufactor;

    /**
     * 净重
     */
    @Excel(name = "净重")
    @TableField("weight")
    private BigDecimal weight;

    /**
     * 保质期
     */
    @Excel(name = "保质期")
    @TableField("period")
    private String period;

    /**
     * 营养介绍
     */
    @Excel(name = "营养介绍")
    @TableField("inutrition_introduction")
    private String inutritionIntroduction;

    /**
     * 产品图片
     */
    @Excel(name = "产品图片")
    @TableField("image")
    private String image;

    /**
     * 产品特点
     */
    @Excel(name = "产品特点")
    @TableField("product_features")
    private String productFeatures;

    /**
     * 产品详情
     */
    @Excel(name = "产品详情")
    @TableField("product_details")
    private String productDetails;

    /**
     * 质量检测报告
     */
    @Excel(name = "质量检测报告")
    @TableField(value = "inspection_report", typeHandler = FastjsonTypeHandler.class)
    private JSONArray inspectionReport;

    /**
     * 附件
     */

    @Excel(name = "附件")
    @TableField(value = "appendix", typeHandler = FastjsonTypeHandler.class)
    private JSONArray appendix;

    public JSONArray getInspectionReport() {
        return inspectionReport;
    }

    public void setInspectionReport(JSONArray inspectionReport) {
        this.inspectionReport = inspectionReport;
    }

    public JSONArray getAppendix() {
        return appendix;
    }

    public void setAppendix(JSONArray appendix) {
        this.appendix = appendix;
    }

    public JSONArray getAreaIds() {
        return areaIds;
    }

    public void setAreaIds(JSONArray areaIds) {
        this.areaIds = areaIds;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getCode() {
        return code;
    }

    public String getProductTypeId() {
        return productTypeId;
    }

    public void setProductTypeId(String productTypeId) {
        this.productTypeId = productTypeId;
    }

    public String getProductTypeName() {
        return productTypeName;
    }

    public void setProductTypeName(String productTypeName) {
        this.productTypeName = productTypeName;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getProvince() {
        return province;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getCity() {
        return city;
    }

    public void setDistrict(String district) {
        this.district = district;
    }

    public String getDistrict() {
        return district;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getAddress() {
        return address;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public String getBrand() {
        return brand;
    }

    public void setPackMethod(String packMethod) {
        this.packMethod = packMethod;
    }

    public String getPackMethod() {
        return packMethod;
    }

    public void setPackEnterprises(String packEnterprises) {
        this.packEnterprises = packEnterprises;
    }

    public String getPackEnterprises() {
        return packEnterprises;
    }

    public void setSpecs(String specs) {
        this.specs = specs;
    }

    public String getSpecs() {
        return specs;
    }

    public void setStorageMethod(String storageMethod) {
        this.storageMethod = storageMethod;
    }

    public String getStorageMethod() {
        return storageMethod;
    }

    public void setMaterials(String materials) {
        this.materials = materials;
    }

    public String getMaterials() {
        return materials;
    }

    public void setStandard(String standard) {
        this.standard = standard;
    }

    public String getStandard() {
        return standard;
    }

    public void setManufactor(String manufactor) {
        this.manufactor = manufactor;
    }

    public String getManufactor() {
        return manufactor;
    }

    public void setWeight(BigDecimal weight) {
        this.weight = weight;
    }

    public BigDecimal getWeight() {
        return weight;
    }

    public void setPeriod(String period) {
        this.period = period;
    }

    public String getPeriod() {
        return period;
    }

    public void setInutritionIntroduction(String inutritionIntroduction) {
        this.inutritionIntroduction = inutritionIntroduction;
    }

    public String getInutritionIntroduction() {
        return inutritionIntroduction;
    }

    public void setImage(String image) {
        this.image = image;
    }

    public String getImage() {
        return image;
    }

    public void setProductFeatures(String productFeatures) {
        this.productFeatures = productFeatures;
    }

    public String getProductFeatures() {
        return productFeatures;
    }

    public void setProductDetails(String productDetails) {
        this.productDetails = productDetails;
    }

    public String getProductDetails() {
        return productDetails;
    }


}
